Add support for Magellan Sportrak.
authorrobertl <robertl@f51c46e8-681c-474f-0cfe-069cfd0219fb>
Sun, 17 Nov 2002 02:21:30 +0000 (02:21 +0000)
committerrobertl <robertl@f51c46e8-681c-474f-0cfe-069cfd0219fb>
Sun, 17 Nov 2002 02:21:30 +0000 (02:21 +0000)
gpsbabel/magellan.h
gpsbabel/magproto.c

index 6d401f17570babc0e3bb18418ad52e35a4daef87..7050befbe1a41cf3bdd5899be08d78cf6ff9cce3 100644 (file)
@@ -29,7 +29,8 @@ typedef enum {
        mm_map410,
        mm_map330,
        mm_gps310,
-       mm_meridian
+       mm_meridian,
+       mm_sportrak
 } meridian_model;
 
 typedef struct pid_to_model {
index 9011e017d1cf3c3c1fd2aef48922c20347fa62f7..72d4568de6d5c0610ac751b5f7e42ef89b6f96d8 100644 (file)
@@ -158,6 +158,7 @@ pid_to_model_t pid_to_model[] =
        { mm_map330, 30, "Map 330" },
        { mm_gps310, 31, "GPS 310" },
        { mm_meridian, 33, "Meridian" },
+       { mm_sportrak, 36, "SporTrak" },
        { mm_unknown, 0, NULL }
 };
 
@@ -315,13 +316,14 @@ mag_verparse(char *ibuf)
                        break;
                case mm_map330:
                case mm_meridian:
+               case mm_sportrak:
                        icon_mapping = map330_icon_table;
                        setshort_length(8);
                        setshort_mustupper(0);
                        mag_cleanse = m330_cleanse;
                        break;
                default:
-                       fatal(MYNAME ": Unknown receiver type.\n");
+                       fatal(MYNAME ": Unknown receiver type %d, model version '%s'.\n", prodid, version);
        }
 }
 
@@ -947,6 +949,7 @@ mag_waypt_pr(const waypoint *waypointp)
        const char *icon_token=NULL;
        char *owpt;
        char *odesc;
+       char *isrc;
 
        ilat = waypointp->position.latitude.degrees;
        ilon = waypointp->position.longitude.degrees;
@@ -972,8 +975,9 @@ mag_waypt_pr(const waypoint *waypointp)
                        break;
 
        }
+       isrc = waypointp->notes ? waypointp->notes : waypointp->description;
        owpt = global_opts.synthesize_shortnames ?
-                        mkshort(waypointp->description) : waypointp->shortname,
+                        mkshort(isrc) : waypointp->shortname,
        odesc = waypointp->description ? waypointp->description : "";
        owpt = mag_cleanse(owpt);
        odesc = mag_cleanse(odesc);